home *** CD-ROM | disk | FTP | other *** search
- /*
- Name: bignewbuttontest.e
- About: Demo of newbutton and newimagebutton plugins
- Version: $VER: bignewbuttontest.e 1.0 (5.6.98)
- Author: Copyright © 1998 Victor Ducedre
-
- A brief note: This was thrown together from Jason's demos for the button
- and imagebutton plugins for button.library.
- This demonstrates different frame types, keyboard support, sizing by both
- image size or supplied attributes, alternate images for selected buttons,
- as well as toggle-selected and push-on-only buttons.
-
- */
- OPT LARGE
-
- MODULE 'tools/easygui', 'tools/exceptions', 'tools/copylist',
- 'intuition/intuition', 'intuition/gadgetclass', 'utility',
- 'plugins/buttonbase', 'gadgets/buttonclass',
- 'plugins/newimagebutton', 'plugins/newbutton'
-
- DEF nb2=NIL:PTR TO newbutton, nib2=NIL:PTR TO newimagebutton
-
- PROC main() HANDLE
- DEF nb1=NIL:PTR TO newbutton, nb3=NIL:PTR TO newbutton, nbp=NIL:PTR TO newbutton,
- nib1=NIL:PTR TO newimagebutton, nib3=NIL:PTR TO newimagebutton,
- nibp=NIL:PTR TO newimagebutton,
- img1, img2, img3, pp1, pp2,
- d1=NIL, d2=NIL, d3=NIL, d4=NIL, d5=NIL
-
- img1:=[0,0,22,22,3,
- d1:=copyListToChip([ /* Plane 0 */
- $00000000,$00000000,$00000000,$00000000,
- $00FC0000,$00060000,$00058000,$0404C000,
- $0407E000,$04006000,$04006000,$04006000,
- $04006000,$04006000,$04006000,$04006000,
- $04006000,$04006000,$04006000,$07FFE000,
- $01FFE000,$00000000,
- /* Plane 1 */
- $00000000,$02000000,$0A800000,$07000000,
- $38C00000,$07F80000,$0BFA8000,$07FB4000,
- $07F82000,$07FFA000,$07FFA000,$07FFA000,
- $03FFA000,$03FFA000,$03FFA000,$03FFA000,
- $03FFA000,$03FFA000,$03FFA000,$00002000,
- $01FFE000,$00000000,
- /* Plane 2 */
- $00000000,$00000000,$00000000,$00000000,
- $00C00000,$00000000,$00008000,$04004000,
- $04002000,$04002000,$04002000,$04002000,
- $00002000,$00002000,$00002000,$00002000,
- $00002000,$00002000,$00002000,$00002000,
- $01FFE000,$00000000]),
- $0007,0,NIL]:image
- img2:=[0,0,22,22,3,
- d2:=copyListToChip([ /* Plane 0 */
- $00000000,$00007000,$0003F000,$000FF000,
- $001FF800,$000FF800,$0007F800,$1E0FF000,
- $21DFF000,$40FFF000,$407FF000,$40FB2000,
- $5FFF8000,$50008000,$7000E000,$6000C000,
- $60018000,$60018000,$40010000,$7FFE0000,
- $00000000,$00000000,
- /* Plane 1 */
- $00000000,$00004000,$00022000,$0001E000,
- $0017E800,$000BE800,$0003D800,$0007D000,
- $1ECE5000,$3F1DB000,$3FB9F000,$3F752000,
- $20000000,$2FFF0000,$3FFF6000,$1FFF4000,
- $1FFF8000,$3FFE8000,$3FFE0000,$00000000,
- $00000000,$00000000,
- /* Plane 2 */
- $00000000,$00004000,$00020000,$00000000,
- $00100800,$00080800,$00001800,$00001000,
- $1EC01000,$3F01B000,$3F81F000,$3F052000,
- $20000000,$25550000,$3AAA6000,$15554000,
- $0AAB8000,$35548000,$2AAA0000,$00000000,
- $00000000,$00000000]),
- $0007,0,NIL]:image
- img3:=[0,0,22,22,3,
- d3:=copyListToChip([ /* Plane 0 */
- $00000000,$10000000,$3C000000,$7E000000,
- $3F000000,$1FB00000,$0FF00000,$07FC0000,
- $07FC0000,$0BFC0000,$17FF8000,$17F8C000,
- $11F8C000,$17FFE000,$14002000,$1C003800,
- $18003000,$18006000,$18006000,$10004000,
- $1FFF8000,$00000000,
- /* Plane 1 */
- $00000000,$00000000,$14000000,$3A000000,
- $1D000000,$0E900000,$07200000,$03EC0000,
- $01EC0000,$05F40000,$0BF00000,$08F74000,
- $0F374000,$08000000,$0BFFC000,$0FFFD800,
- $07FFD000,$07FFE000,$0FFFA000,$0FFF8000,
- $00000000,$00000000,
- /* Plane 2 */
- $00000000,$00000000,$04000000,$02000000,
- $01000000,$00900000,$00000000,$000C0000,
- $000C0000,$04040000,$08000000,$08074000,
- $0F274000,$08000000,$09554000,$0EAA9800,
- $05555000,$02AAE000,$0D552000,$0AAA8000,
- $00000000,$00000000]),
- $0007,0,NIL]:image
- pp1:=[0,0,22,7,2,
- d4:=copyListToChip([$00030000, $0003C000, $0003F000, $0003FC00,
- $0003F000, $0003C000, $00030000,
- $E3800000, $E3800000, $E3800000, $E3800000,
- $E3800000, $E3800000, $E3800000]),
- $0003, 0, NIL]:image
- pp2:=[0,0,22,7,2,
- d5:=copyListToChip([$E3800000, $E3800000, $E3800000, $E3800000,
- $E3800000, $E3800000, $E3800000,
- $00030000, $0003C000, $0003F000, $0003FC00,
- $0003F000, $0003C000, $00030000]),
- $0003, 0, NIL]:image
-
- IF utilitybase:=OpenLibrary('utility.library', 37)
-
- NEW nb1.button([NB_TEXT, '_Toggle', NB_TOGGLE, TRUE, NIL])
- NEW nb2.button([NB_TEXT, '_Push', NB_PUSH, TRUE, NIL])
- NEW nb3.button([NB_TEXT, '<- _Reset', NIL])
- NEW nbp.button([NB_TEXT, 'Paused', NB_TOGGLE, TRUE])
-
- NEW nib1.button([NIB_IMAGE, img1, NB_TOGGLE, TRUE, NB_FRAMETYPE, BATT_THINFRAME, NIL])
- NEW nib2.button([NIB_IMAGE, img2, NB_PUSH, TRUE, NB_FRAMETYPE, BATT_THINFRAME, NIL])
- NEW nib3.button([NIB_IMAGE, img3, NB_FRAMETYPE, BATT_THINFRAME, NIL])
- NEW nibp.button([NIB_IMAGE, pp1, NIB_SELECTRENDER, pp2, NB_TOGGLE, TRUE,
- NIB_WIDTH, 30, NIB_HEIGHT, 22,
- NB_FRAMETYPE, BATT_THINFRAME, NIL])
-
- easyguiA('BOOPSI in EasyGUI!',
- [ROWS,
- [TEXT,'Text Buttons (with key support)',NIL,FALSE,5],
- [COLS,
- [NEWBUTTON,{buttonaction1}, nb1],
- [NEWBUTTON,{buttonaction1}, nb2],
- [NEWBUTTON,{buttonaction2}, nb3],
- [NEWBUTTON,{buttonaction4}, nbp]
- ],
- [SBUTTON,{toggle_enabled},'Toggle Enabled',nbp],
- [BAR],
- [TEXT,'Image Buttons (thin frames)',NIL,FALSE,5],
- [COLS,
- [NEWIMAGEBUTTON,{buttonaction1}, nib1],
- [NEWIMAGEBUTTON,{buttonaction1}, nib2],
- [NEWIMAGEBUTTON,{buttonaction3}, nib3],
- [NEWIMAGEBUTTON,{buttonaction1}, nibp]
- ],
- [SBUTTON,{toggle_enabled},'Toggle Enabled',nibp]
- ])
- ENDIF
- EXCEPT DO
- END nb1,nb2,nb3,nbp, nib1, nib2, nib3, nibp
- Dispose(d1); Dispose(d2); Dispose(d3); Dispose(d4); Dispose(d5)
- IF utilitybase THEN CloseLibrary(utilitybase)
- report_exception()
- ENDPROC
-
- PROC buttonaction1(i,b:PTR TO buttonbase)
- WriteF('button selected=\d\n', b.get(NB_SELECTED))
- ENDPROC
-
- PROC buttonaction2(i,b:PTR TO buttonbase)
- WriteF('button selected=\d\n', b.get(NB_SELECTED))
- IF nb2.get(NB_SELECTED) THEN nb2.set(NB_SELECTED, FALSE)
- ENDPROC
-
- PROC buttonaction3(i,b:PTR TO buttonbase)
- WriteF('button selected=\d\n', b.get(NB_SELECTED))
- IF nib2.get(NB_SELECTED) THEN nib2.set(NB_SELECTED, FALSE)
- ENDPROC
-
- PROC buttonaction4(i,b:PTR TO newbutton)
- WriteF('button selected=\d\n', b.get(NB_SELECTED))
- b.set(NB_TEXT, IF b.get(NB_SELECTED) THEN 'Play' ELSE 'Paused')
- ENDPROC
-
- PROC toggle_enabled(b:PTR TO buttonbase,i)
- b.set(NB_DISABLED, b.get(NB_DISABLED)=FALSE)
- ENDPROC
-
- vers: CHAR 0, '$VER: bignewbuttontest 1.0 (5.6.98)', 0
-